23b6b91b3de5b1f73c2e84c41c181700517364e6,src/gov/nih/ncgc/bard/capextract/handler/ExperimentResultsHandler.java,ExperimentResultsHandler,process,#String#CapResource#,34

Before Change


        		//process expt results
        		handler.process(href, CAPConstants.CapResource.RESULT_JSON);
        		//set complete status
        		setExtractionStatus(CAPConstants.CAP_STATUS_COMPLETE, href, 
        			CAPConstants.CapResource.EXPERIMENT);
        	    }
        	}
            }

After Change


     * @param resource CAPResource for experiments.
     */
    public int process(String url, CapResource resource) throws IOException {
        if (resource != CAPConstants.CapResource.EXPERIMENTS) return CAPConstants.CAP_EXTRACT_LOAD_STATUS_FAILED;
        log.info("Processing " + resource);

        while (url != null) { // in case 206 partial response is returned, we should continue to iterate
            // get the Experiments object here
            Experiments experiments = getResponse(url, resource);
            url = null;
            BigInteger n = experiments.getCount();
            log.info("Will be processing " + n + " experiments result");
            List<Link> links = experiments.getLink();
            for (Link link : links) {
        	if (link.getRel().equals("next")) {
        	    url = link.getHref();
        	    log.info("have next link, not related");
        	} else if (link.getRel().equals("related") &&
        		link.getType().equals(CAPConstants.CapResource.EXPERIMENT.getMimeType())) {

        	    log.info("have related link, process results");
        	    String href = link.getHref();
        	    link.getType();
        	    link.getTitle();

        	    //log.info("\t" + title + "/" + type + "/ href = " + href);
        	    int loadStatus;
        	    ICapResourceHandler handler = CapResourceHandlerRegistry.getInstance().getHandler(CAPConstants.CapResource.RESULT_JSON);
        	    if (handler != null) { 
        		//set start status
        		setExtractionStatus(CAPConstants.CAP_STATUS_STARTED, href, 
        			CAPConstants.CapResource.EXPERIMENT);
        		//process expt results
        		loadStatus = handler.process(href, CAPConstants.CapResource.RESULT_JSON);
        		//set complete status
        		if(loadStatus == CAPConstants.CAP_EXTRACT_LOAD_STATUS_COMPLETE) {
        		    setExtractionStatus(CAPConstants.CAP_STATUS_COMPLETE, href, 
        			    CAPConstants.CapResource.EXPERIMENT);
        		} else if(loadStatus == CAPConstants.CAP_EXTRACT_LOAD_STATUS_FAILED) {
        		    setExtractionStatus(CAPConstants.CAP_STATUS_FAILED, href, 
        			    CAPConstants.CapResource.EXPERIMENT);
        		}
        	    }
        	}
            }
        }
	return CAPConstants.CAP_EXTRACT_LOAD_STATUS_COMPLETE;
    }
    
    /*